home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / C64 / G-Games / (c)ge.d64 / crazy bomber.c (.txt) < prev    next >
Commodore BASIC  |  2007-02-04  |  7KB  |  207 lines

  1. 4 REM *********************************
  2. 5 REM * MODIFIED EVERY SO SLIGHTLY AT *
  3. 6 REM * 1419H ON APRIL THE 3RD,  1985 *
  4. 7 REM *              BY               *
  5. 8 REM *         DAVID BRADLEY         *
  6. 9 REM *********************************
  7. 10 POKE53280,0:POKE53281,7
  8. 50 PRINT"[147]MODIFIED FOR THE C-64 BY RAVI PALEPU."
  9. 60 FORXF=1TO1500:NEXT
  10. 100 POKE59468,12:POKE59409,52:P$="       >>>>[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]<<<<"
  11. 101 PRINT"[147][144]"P$
  12. 102 PRINT"       >>>> THE CRAZY BOMBER <<<<"
  13. 104 PRINTP$
  14. 120 PRINT" THIS IS A GAME OF SKILL TO SEE HOW WELLYOU CAN FLY A ";
  15. 130 PRINT"BOMBER.  YOU ARE GIVEN    TWENTY FLY-BYS TO DROP BOMBS TO HIT[160]";
  16. 140 PRINT"    TARGETS BELOW.  YOU CAN ONLY MISS THE   TARGET ";
  17. 150 PRINT"THREE TIMES.  AFTER TWENTY FLY-  BYS OR THREE MISSES THE GAME IS[160]";
  18. 160 PRINT"OVER.   MAKE EVERY[146] BOMB COUNT!"
  19. 175 PRINT"PUSH THE '*' BUTTON TO DROP EACH BOMB."
  20. 176 PRINT"YOU GET UP TO TWO BOMBS PER FLY-BY."
  21. 180 PRINT"PRESS[160]ANY KEY TO PLAY. GOOD LUCK!!":POKE59409,60
  22. 190 GET Q$:IFQ$=""THEN190
  23. 200 G=59468:X=G-59:POKEG,12:POKEX,52:PRINT"[147]"
  24. 201 PRINT"WHICH SKILL LEVEL DO YOU WISH TO PLAY?  (1=EASY 2=HARD)":POKEX,60
  25. 202 GETA$:IF A$=""THEN202
  26. 204 A=VAL(A$):IFA<3ANDA>0THEN208
  27. 206 PRINT"      ANSWER 1 OR 2.":FORI=1TO1000:NEXT:GOTO200
  28. 208 POKE53281,0:PRINT"[147]":POKE53281,7:POKEG,12
  29. 209 Z$="[157][157][157][157][157][157]":F$="":Y2$="[166][166][166][166][166][166]":B5$="          ":IFA=2GOTO7000
  30. 220 POKEX,52:PRINTF$F$"[146][166]1[146]"B5$"       1[146][166]11[146]"B5$"     1[146][166]";
  31. 230 PRINT"[146][166]2[146]"B5$"      12[146][166]22[146]"B5$"    12[146][166]";
  32. 240 PRINT"[146][166]31[146]"B5$"     23[146][166][166]31[146]"B5$"   23[146][166]";
  33. 250 PRINT"[146][166]421[146]"B5$"    34[146][166][166][166]21[146]"B5$" 134[146][166]";
  34. 260 PRINT"[146][166][166]321[146]"B5$"  145[146][166][166][166][166]21[146]         124[146][166][166]";
  35. 270 PRINT"[146][166][166]43211111[146]   1111256[146][166][166][166][166]3211111[146]   1235[146][166][166]";
  36. 280 PRINT"[146][166][166][166][166][166]2222211[146] 2222[146]"Y2$"[166][166]3222221[146] 12[146][166][166][166][166][166]";
  37. 290 PRINT"[146]"Y2$"333322133[146]"Y2$Y2$"[166]333212[146]"Y2$;
  38. 300 PRINT"[146]"Y2$Y2$Y2$Y2$Y2$Y2$"[166][166][166][166]";
  39. 310 PRINT"[146][166][166][166][166] SCORE=  0 [166][166][166][166] MISSES LEFT= 3 [166][166][166][166][166]":POKEX,60:PRINT""
  40. 320 N=0:H=0:GE=0:DIMV(5),BH(5),HT(5):R=1729:S=R+1:T=S+1:U=R-39:W=1050:TR=500
  41. 410 FORC=1TO20:IFGE<>0THEN3000
  42. 413 H=0:BH(1)=0:BH(2)=0:D=INT(RND(1)*5+1)
  43. 414 ONDGOTO415,416,417,418,419
  44. 415 D$="":GOTO420
  45. 416 D$="":GOTO420
  46. 417 D$="":GOTO420
  47. 418 D$=""+F$:GOTO420
  48. 419 D$=""+F$
  49. 420 IFINT(C/2)=(C/2)THENE=39:GOTO450
  50. 430 E=41
  51. 450 IFE=39THEN600
  52. 460 FORL=1TO47:IFL>40THEN490
  53. 472 ONLGOTO481,482,483,484,485,486,487,488
  54. 480 PRINTD$TAB(L-8);" [223][223][146] .[208][207][221]"Z$"[157] [184][184][185] [166][146][179][157][157][157][157] [205] [221][157][157][157] [190]":GOTO590
  55. 481 PRINTD$"[221][157][179][157][221]":GOTO590
  56. 482 PRINTD$"[207][221][157][157][166][179][157][221][157][157][190]":GOTO590
  57. 483 PRINTD$"[208][207][221][157][157][157] [146][166][179][157][157][157][205] [221][157][157][157] [190]":GOTO590
  58. 484 PRINTD$".[208][207][221][157][157][157][157][185] [146][166][179][157][157][157][157] [205] [221][157][157][157] [190]":GOTO590
  59. 485 PRINTD$" .[208][207][221][157][157][157][157][157][184][185] [146][166][179][157][157][157][157] [205] [221][157][157][157] [190]":GOTO590
  60. 486 PRINTD$"[223][146] .[208][207][221]"Z$"[184][184][185] [146][166][179][157][157][157][157] [205] [221][157][157][157] [190]":GOTO590
  61. 487 PRINTD$"[223][223][146] .[208][207][221]"Z$"[157] [184][184][185] [146][166][179][157][157][157][157] [205] [221][157][157][157] [190]":GOTO590
  62. 488 PRINTD$" [223][223][146] .[208][207][221]"Z$"[157][157]  [184][184][185] [146][166][179][157][157][157][157][157]  [205] [221][157][157][157][157]  [190]":GOTO590
  63. 490 ONL-40GOTO500,510,520,530,540,550,560
  64. 500 PRINTD$TAB(33);" [223][223][146] .[208][207]"Z$" [184][184][185] [166][146][157][157][157] [205] [157][157] [190]":GOTO590
  65. 510 PRINTD$TAB(34);" [223][223][146] .[208][157][157][157][157][157] [184][184][185] [146][157][157] [205] [157][157] ":GOTO590
  66. 520 PRINTD$TAB(35);" [223][223][146] .[157][157][157][157] [184][184][185][146][157]  ":GOTO590
  67. 530 PRINTD$TAB(36);" [223][223][146] [157][157][157] [184][184][146][157]  ":GOTO590
  68. 540 PRINTD$TAB(37);" [223][223][146] [157][157][157] [184][146]":GOTO590
  69. 550 PRINTD$TAB(38);" [223][146] [157][157][157]  [146]":GOTO590
  70. 560 PRINTD$TAB(39);" [157] "
  71. 590 GOTO800
  72. 600 FORL=1TO47
  73. 610 ONLGOTO640,650,660,670,680,690,700,710
  74. 620 IFL>40THEN720
  75. 630 PRINTD$TAB(40-L);"[221][208][207]. [169][146][169] "Z$"[157][157][171][166] [185][146][184][184] "Z$"[157][221] [206] [157][157][157][188] ":GOTO800
  76. 640 PRINTD$TAB(39)"[221][157][171][157][221]":GOTO800
  77. 650 PRINTD$TAB(38)"[221][208][157][157][171][166][157][157][221][188]":GOTO 800
  78. 660 PRINTD$TAB(37)"[221][208][207][157][157][157][171][166] [146][157][157][157][221] [206][157][157][188] ":GOTO800
  79. 670 PRINTD$TAB(36)"[221][208][207].[157][157][157][157][171][166] [185][146][157][157][157][157][221] [206] [157][157][157][188] ":GOTO800
  80. 680 PRINTD$TAB(35)"[221][208][207]. [157][157][157][157][157][171][166] [185][146][184][157][157][157][157][157][221] [206] [157][157][157][188] ":GOTO800
  81. 690 PRINTD$TAB(34)"[221][208][207]. [169][146]"Z$"[171][166] [185][146][184][184]"Z$"[221] [206] [157][157][157][188] ":GOTO800
  82. 700 PRINTD$TAB(33)"[221][208][207]. [169][146][169]"Z$"[157][171][166] [185][146][184][184] "Z$"[157][221] [206] [157][157][157][188] ":GOTO800
  83. 710 PRINTD$TAB(32);"[221][208][207]. [169][146][169] "Z$"[157][157][171][166] [185][146][184][184] "Z$"[157][221] [206] [157][157][157][188] ":GOTO800
  84. 720 ONL-40GOTO730,740,750,760,770,780,790
  85. 730 PRINTD$"[208][207]. [169][146][169] "Z$"[157][166] [185][146][184][184] "Z$" [206] [157][157][157][188] ":GOTO800
  86. 740 PRINTD$"[207]. [169][146][169] "Z$" [185][146][184][184] [157][157][157][157][157][206] [157][157] ":GOTO800
  87. 750 PRINTD$". [169][146][169] [157][157][157][157][157][185][146][184][184] [157][157][157][157] ":GOTO800
  88. 760 PRINTD$" [169][146][169] [157][157][157][157][184][184] ":GOTO800
  89. 770 PRINTD$"[169][146][169] [157][157][157][184] ":GOTO800
  90. 780 PRINTD$"[169] [157][157] ":GOTO800
  91. 790 PRINTD$" "
  92. 800 GETK$
  93. 805 IFK$<>"*"THEN1000
  94. 810 IFW2=1THEN1330
  95. 915 IFL<5ORL>31+(D*2)THEN1330
  96. 917 IFH=>1ANDL<Y+2THEN1000
  97. 918 H=H+1:SB(H)=0:IFH=5THEN8020
  98. 919 N=N+1
  99. 920 IFN=31THEN3000
  100. 930 IFE=41THEN950
  101. 935 V(H)=(1107+(D*80)-L):POKEV(H),42:GOTO960
  102. 950 V(H)=(1060+(D*80)+L):POKEV(H),42
  103. 960 Y=L
  104. 1000 IFH=0THEN1330
  105. 1010 FORB=1TOH
  106. 1020 IFSB(B)=1THEN1300
  107. 1050 I=V(B)-40:J=PEEK(I):M=V(B)+E:K=PEEK(M)
  108. 1070 IFK=32THEN1240
  109. 1080 IFK=102THEN1150
  110. 1090 IFK>176ANDK<186THEN1100
  111. 1092 GOSUB5100:GOTO1300
  112. 1100 F=F+(K-176)
  113. 1102 PRINT"";:FORP=1TO22:PRINT"";:NEXTP
  114. 1104 IFF<10THENPRINT"";F:GOTO1120
  115. 1108 IFF=>10ANDF<100THENPRINT"";F:GOTO1120
  116. 1112 IFF=>100ANDF<1000THENPRINT"";F
  117. 1120 BH(B)=1:POKEM,42:POKEV(B),32:GOTO1260
  118. 1150 IFBH(B)<>1THEN1180
  119. 1160 POKEV(B),32:SB(B)=1:GOTO1260
  120. 1180 ER=ER+1:POKE1937,57-ER:IFER=10THENGE=1
  121. 1210 SB(B)=1:IFER=10THENGE=1
  122. 1220 GOTO1260
  123. 1240 POKEM,42:POKEV(B),32
  124. 1260 V(B)=V(B)+E:IFV(B)<33007THEN1300
  125. 1270 POKEI+40,J:IFJ=32THEN1300
  126. 1290 I=I-40:J=PEEK(I):IFJ=42THEN1290
  127. 1295 GOTO1270
  128. 1300 NEXTB
  129. 1310 IFGE<>0THEN3000
  130. 1322 IFA<>3THEN1330
  131. 1330 IFA=2THENGOSUB5000
  132. 1335 NEXTL
  133. 1340 IF W2=1THENGOTO3330
  134. 1341 NEXTC
  135. 3000 GOSUB6000
  136. 3030 PRINT"";TAB(10);"   FINAL STATS[146]"
  137. 3035 IFC=21THENPRINTF$"YOUR PLANE MADE ALL 20 OF ITS FLY-BYS.":GOTO3045
  138. 3040 PRINTF$"YOUR PLANE MADE"C"OUT OF 20 FLY-BYS."
  139. 3045 IFN=21THENPRINT"YOU DROPPED ALL OF YOUR 20 BOMBS.":GOTO3060
  140. 3050 PRINT"THE GAME ENDED WITH"N"OUT OF 20 BOMBS":PRINT"DROPPED."
  141. 3060 IFER=1THENPRINT"YOU HAD 1 MISS. (ONLY 3 ALLOWED)"
  142. 3062 IFER<>1THENPRINT"YOU HAD"ER"MISSES.  (ONLY 3 ALLOWED)."
  143. 3070 PRINT"** YOUR FINAL SCORE WAS "F"[157] **"
  144. 3072 IFS2<FTHENS2=F
  145. 3074 IFP9>0THENPRINT"HIGH SCORE THIS SESSION="S2"[157]."
  146. 3080 PRINT"DO YOU WANT TO PLAY AGAIN?":POKEX,60
  147. 3090 GETZ$:IFZ$=""THEN3090
  148. 3100 IFZ$="N"THENGOTO3310
  149. 3200 IFZ$="Y"THEN3305
  150. 3300 PRINT"PLEASE ANSWER WITH A Y OR N.[145]":GOTO3090
  151. 3305 POKE59409,52:P9=P9+1:POKE2023,P9:POKE2022,S2
  152. 3308 CLR:P9=PEEK(2023):S2=PEEK(2022):GOTO200
  153. 3310 PRINT"[147]"F$"    I HOPE YOU ENJOYED THE GAME!":ER=0:A=1:D=0:W2=1:H=0
  154. 3320 Z$="[157][157][157][157][157][157]":AB=0:D$="":GOTO600
  155. 3330 PRINT"[147]":POKEG,12:END
  156. 5000 Q=Q+1
  157. 5010 IFQ=10THENQ=1
  158. 5020 ONQGOTO5025,5030,5035,5040,5045,5050,5055,5060
  159. 5025 POKER,229:POKES,229:POKET,229:GOTO5070
  160. 5030 POKER,212:POKES,212:POKET,212:GOTO5070
  161. 5035 POKER,199:POKES,199:POKET,199:GOTO5070
  162. 5040 POKER,194:POKES,194:POKET,194:GOTO5070
  163. 5045 POKER,221:POKES,221:POKET,221:GOTO5070
  164. 5050 POKER,200:POKES,200:POKET,200:GOTO5070
  165. 5055 POKER,217:POKES,217:POKET,217:GOTO5070
  166. 5060 POKER,231:POKES,231:POKET,231:GOTO5070
  167. 5070 RETURN
  168. 5100 POKEV(B),32:SB(B)=1:POKEU,78:FORI=1TO750:NEXTI
  169. 5110 POKEU,32:POKEU-1,122:FORI=1TO750:NEXTI:P=160:K=0
  170. 5112 FORI=1TO2
  171. 5114 FORJ=UTOWSTEP-40
  172. 5116 IFK=1THEN5120
  173. 5118 IFPEEK(J)=32ORPEEK(J)=96ORPEEK(J)=160THEN5120
  174. 5119 K=1:W=J:P=32:GOTO5124
  175. 5120 POKE(J),P
  176. 5122 NEXTJ
  177. 5123 P=32
  178. 5124 NEXTI:IFK=1THEN5500
  179. 5170 POKEU-1,100:POKEU,78:FORI=1TO750:NEXTI:POKEU,100
  180. 5180 RETURN
  181. 5200 GOSUB5150
  182. 5500 FORI=1TO6
  183. 5505 IFE=39THEN5550
  184. 5540 PRINT""D$TAB(L-8);"        "Z$"[157]       [157][157][157][157]    [157][157][157]  "
  185. 5545 PRINT""D$TAB(L-8);" [146][223][223][146] .[208][207][221]"Z$"[157] [184][184][185] [166][146][179][157][157][157][157] [205] [221][157][157][157] [190]":GOTO5580
  186. 5550 PRINT""D$TAB(40-L);"        "Z$"[157][157]       "Z$"[157]    [157][157][157]  "
  187. 5555 PRINT""D$TAB(40-L);"[146][221][208][207]. [169][146][169] "Z$"[157][157][171][166] [185][146][184][184] "Z$"[157][221] [206] [157][157][157][188] "
  188. 5580 NEXTI
  189. 5585 PRINT""D$TAB(L-8);"        "Z$"[157]       [157][157][157][157]    [157][157][157]  "
  190. 5590 PRINT""D$TAB(40-L);"        "Z$"[157][157]       "Z$"[157]    [157][157][157]  "
  191. 5595 POKEU-1,100:POKEU,78:FORI=1TO750:NEXTI:POKEU,100
  192. 5600 FORI=1TO1500:NEXTI:GOTO3000
  193. 6000 POKEX,52:PRINT"[147][223][223][146] .[208][207][221]"Z$"[184][184][185] [146][166][179][157][157][157][157] [205] [221][157][157][157] [190]"
  194. 6060 PRINT""TAB(33);"[221][208][207]. [169][146][169]"Z$"[157][171][166] [185][146][184][184]"Z$"[221] [206] [157][157][157][188]":RETURN
  195. 7000 POKEX,52:PRINT"[147]"F$F$"      WATCH OUT FOR THE DEATH BEAM! "
  196. 7002 PRINT""F$F$"       DO NOT HIT THE SENSORS!!!    "
  197. 7003 POKEX,60:FORI=1TO2000:NEXTI
  198. 7004 POKEX,52:POKE53281,0:PRINT"[147]"F$F$:POKE53281,7
  199. 7005 PRINT"         99[146]"B5$B5$"        [166][145][157][166][145][157][166]";
  200. 7010 PRINT"       "Y2$"      5[146]     [164][164][164]"B5$"5[146][166]";
  201. 7020 PRINT"      "Y2$"[166][166][166]    6[146] ^^9[146] [165][165][165][146] 9^^[146]     66[146][166]";
  202. 7030 PRINT"     "Y2$"[166][166][166][166]    7[146][166][166][166][166]     [146][166][166][166][166]    77[146][166]";
  203. 7040 PRINT"    "Y2$Y2$"   8[146]"Y2$Y2$"[166][166]  888[146][166]";
  204. 7050 PRINT" 99[146]"Y2$Y2$"[166][166] 99[146]"Y2$Y2$"[166][166][166]9999[146][166]";
  205. 7499 GOTO300
  206. 8020 H=4:NB=NB-1:B=2:GOTO1000
  207.